Re: Use of OIDS as primary keys - Mailing list pgsql-general

From Elaine Lindelef
Subject Re: Use of OIDS as primary keys
Date
Msg-id v04210109b905d73ca513@[172.16.2.101]
Whole thread Raw
In response to Re: Use of OIDS as primary keys  (Oliver Elphick <olly@lfix.co.uk>)
List pgsql-general
>On Sun, 2002-05-12 at 06:56, Alan Wayne wrote:
> > Hi!
> >
> > I'm wondering how I can use the system generated OIDS
> > as primary keys. Does postgre automatically fill in
>
>Don't do it!
>
>Oids are not saved in a dump unless you specifically ask for them;
>you'll be in a right mess if you forget and then need to restore from
>the dump.  Then, oids aren't guaranteed to be unique.  In any case, your
>database design should not depend on an internal feature of the database
>implementation.
>
>If there is no primary key in the data, create one by including a SERIAL
>field (an integer with an associated next number generator) and use that
>as the key.
>
>--
>Oliver Elphick                                Oliver.Elphick@lfix.co.uk
>Isle of Wight                              http://www.lfix.co.uk/oliver
>GPG: 1024D/3E1D0C1C: CA12 09E0 E8D5 8870 5839  932A 614D 4C34 3E1D 0C1C

I think it would be valuable if a discussion of this were added to
the FAQ somewhere. It took me a while to figure this out - in Oracle
and mySQL I was used to making my own autoincrement columns, and at
first usage it seemed that postgre was saving me from that bit of
drudgery. ;^) Eventually I realized I needed my own columns, but it's
not obvious and it's a bit of a pain to undo.

Elaine Lindelef


pgsql-general by date:

Previous
From: Randall Barber
Date:
Subject: Quotes in SQL
Next
From: Keehan Mallon
Date:
Subject: Configure problems with readline Mandrake 8.2 and postgres 7.2.1